<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // function fo(x = 2,y = 3){
        //     return [x,y]
        // }
        // console.log(fo())

        // function fo(...rest){
        //     let sum = 0
        //     for (var val of rest){
        //         sum += val
        //     }
        //     console.log(sum)
        // }
        // fo(1,2,3,4)

        // var fn = a => a
        // console.log(fn(10))
        /* 箭头函数与普通函数的不同:
        箭头函数没有自己的this，他会捕获上下文的this值作为哦自己的this值。
        而普通函数的this值是在运行时动态绑定的,他的值取决于函数调用方式.
            箭头函数不能作为构造函数使用箭头函数没有自己的原型对象
            箭头函数没有arguments对象,只能通过rest参数(...args)获取参数列表
            箭头函数不能使用yidld关键字,因此不能用作生成器函数.
            */

        // function fo([x,y]){
        //     return [y, x]
        // }
        // console.log(fo([1,2]))

        // let a = 1;
        // let b = 2;
        // [a,b] = fo([a,b])
        // console.log(a,b)

        // var fn = {
        //     '0':'高',
        //     '1':'富',
        //     '2':'帅',
        //     length:3
        // }
        // console.log(Array.from(fn))

        // var arr1 = Array.of(1,2,3,4,5,6)
        // console.log(arr1)
        // Array.from 可以把伪数组转化为真正的数组
        // Array.of会把传入的参数都作为数组的元素
        // console.log(arr1.find((n) => n > 5))
        //   console.log(  arr1.findIndex(function(value,index,arr){
        //         return value > 3;
        //     }))

        // const arr1 = [1,2,3]
        // const arr2 = [4,5,6]
        // const hebing = [...arr1,...arr2]
        // console.log(hebing);

        // function fo(a,b){
        //     return a+b
        // }
        // const qq = fo(...hebing)
        // console.log(qq)

        const pro = (arr) => {
            const fildArray = arr.filter(item => item >= 0);
            const sortedArray = [...fildArray].sort((a, b) => a - b);

            return sortedArray;
        };

        
        const inputArray = [3, -1, 2, 0, -5, 7, 9];
        const processedArray = pro(inputArray);
        console.log(processedArray); 





    </script>
</body>

</html>